package com.yuandian.ops.workbench.service;

import com.yuandian.bpm.common.core.util.R;
import com.yuandian.ops.workbench.po.AlarmListParams;
import com.yuandian.ops.workbench.vo.MonitorOverviewVo;
import com.yuandian.utils.PageDataInfo;

/**
 * 说明：运维工作台 业务数据统计service接口
 * @Author LinShiHe
 * @Date 2023/03/12
 */
public interface IDevOpsHomePageService {

	/**
	 * 查询监控概况
	 * @return 监控概况vo对象
	 */
	MonitorOverviewVo queryRecentMonitorOverview(AlarmListParams params);

	/**
	 * 查询区域业务统计(地图)
	 * @param params 查询业务告警信息相关数据请求对象
	 * @return 通用返回对象
	 */
	R<Object> queryMapAreaBusinessStatistics(AlarmListParams params);

	/**
	 * 查询区域业务统计
	 * @param params 查询业务告警信息相关数据请求对象
	 * @return 通用返回对象
	 */
	R<Object> queryAreaBusinessStatistics(AlarmListParams params);

	/**
	 * 查询系统受理量、告警量趋势
	 * @param params 查询业务告警信息相关数据请求对象
	 * @return 通用返回对象
	 */
	R<Object> queryCompleteAlarmTrend(AlarmListParams params);

	/**
	 * 查询业务告警TOP5
	 * @param params 请求对象
	 * @return 通用返回对象
	 */
	R<Object> getBusinessBusiAlarmTop(AlarmListParams params);

	/**
	 * 查询业务健康度TOP5
	 * @param params 请求对象
	 * @return 通用返回对象
	 */
	R<Object> getBusinessHealthTop(AlarmListParams params);

	/**
	 * 查询最新健康度告警topN
	 * @param params 查询业务告警信息相关数据请求对象
	 * @return 通用分页对象
	 */
	PageDataInfo queryRecentHealthRateAlarmTopN(AlarmListParams params);

}
